Fric-frac Data Definition Language
We hebben een aantal tabellen nodig voor onze fric-frac Event kalender.
Probleem
We kiezen ervoor om de tabellen, primary keys en foreign keys met een script aan te maken en niet met de visuele tool omdat het uitrollen van de applicatie op deze manier kan geautomatiseerd worden. Dit maakt het ook makkelijker om de applicatie te hergebruiken en te onderhouden.
We splitsen ook de scripts in DDL (Data Definition language) en DML (Data Manipulation Language) om het ontwikkelen en testen te vergemakkelijken. DDL dient maar 1x uitgevoerd te worden, de DML moet onderhouden en verfijnd worden.
Ontwerp
De aanwijzingen voor de eigenschappen vind je in Fric-frac Event Calendar logisch model. Boven elke tabel staan indicaties over de tabel zelf.
Label | Naam | Omschrijving |
Databasenaam | docent1 | de naam voor de database |
Displaynaam voor database | Fric-frac | de naam van de database zoals die op het scherm aan de gebruiker getoond zal worden |
Vendor | ModernWays | de naam van de organisatie die eigenaar is van de database |
Tabelnaam | EventCategory | de naam van de tabel |
Displaynaam voor tabel | Event categorie | de naam van de tabel zoals die op het scherm aan de gebruiker getoond zal worden |
geördend op | Name | lijst van kolommen waarop de rijen in de tabel gördend moeten worden, door een komma gescheiden |
In de verschillende kolommen staat opgegeven hoe de tabel aangemaakt moet worden.
Naam | Omschrijving |
Column Name | de naam voor de kolom |
Display Text | de naam van de kolom zoals die op het scherm aan de gebruiker getoond zal worden |
Searchable |
|
Unique | YES wil zeggen dat je een UNIQUE constraint moet toevoegen |
Type |
gegevenstype:
|
Length | het aantal tekens die voorzien moeten worden; voor DECIMAL is dat het aantal cijfers voor de komma en het aantal cijfers na de komma bv. 4,2 |
Variable | als hier YES staat gebruik je VARCHAR anders CHAR |
International | als hier YES staat moet je nationale karatersets gebruiken. Het gegevenstype moet dus beginnen met n, bijvoorbeeld nchar, nvarchar |
Required | als dit YES is, voeg je een not null constraint toe |
Elk DDL script maakt een tabel en de kolommen en voegt de 4 basisconstraints hieraan toe:
- Primary key
- Foreign key
- Not NULL
- Unique
Elke tabel bevat een kolom met de naam Id die we als primary key gebruiken. Deze kolom is van het type auto increment.
Alle namen voor de database objecten zijn in Pascal notatie. De tabelnamen zijn in het enkelvoud. Er bestaat hierover veel discussie.
Oplossing
SQL
Paragraaf